@@ -842,18 +842,19 @@ def member_activity_update(request):  | 
            ||
| 842 | 842 | 
                     subtitle = request.POST.get('subtitle', '')
               | 
            
| 843 | 843 | 
                     date = request.POST.get('date', '')
               | 
            
| 844 | 844 | 
                     city = request.POST.get('city', '')
               | 
            
| 845 | 
                -    location = request.POST.get('location', '')
               | 
            |
| 846 | 
                -    integral = request.POST.get('integral', '')
               | 
            |
| 845 | 
                +    location = request.POST.get('location', 0)
               | 
            |
| 846 | 
                +    integral = int(request.POST.get('integral', 0))
               | 
            |
| 847 | 847 | 
                     cover_url = request.POST.get('cover_path', '')
               | 
            
| 848 | 848 | 
                     slider_image = request.POST.get('banner_path', '')
               | 
            
| 849 | 849 | 
                     image = request.POST.get('banner_path', '')
               | 
            
| 850 | 850 | 
                     is_signup = request.POST.get('is_signup', '')
               | 
            
| 851 | 
                -    group_share_integral = request.POST.get('share_integral', '')
               | 
            |
| 852 | 
                -    group_share_max_integral = request.POST.get('group_share_max_integral', '')
               | 
            |
| 853 | 
                -    group_share_integral = request.POST.get('share_integral', '')
               | 
            |
| 851 | 
                +    group_share_integral = int(request.POST.get('share_integral', 0))
               | 
            |
| 852 | 
                +    group_share_max_integral = int(request.POST.get('group_share_max_integral', 0))
               | 
            |
| 853 | 
                +    group_share_integral = int(request.POST.get('share_integral', 0))
               | 
            |
| 854 | 854 | 
                     is_slider = request.POST.get('is_slider', '')
               | 
            
| 855 | 855 | 
                     content_rich_text = request.POST.get('content_rich_text', '')
               | 
            
| 856 | 856 | 
                     share_h5_link = request.POST.get('share_h5_link', '')
               | 
            
| 857 | 
                +    activity_state = int(request.POST.get('activity_state', 0))
               | 
            |
| 857 | 858 | 
                 | 
            
| 858 | 859 | 
                if brand_id != settings.KODO_DEFAULT_BRAND_ID:  | 
            
| 859 | 860 | 
                return response(ProductBrandStatusCode.BRAND_NOT_MATCH)  | 
            
                @@ -870,13 +871,13 @@ def member_activity_update(request):  | 
            ||
| 870 | 871 | 
                 | 
            
| 871 | 872 | 
                log.title = title  | 
            
| 872 | 873 | 
                log.subtitle = subtitle  | 
            
| 873 | 
                - log.date = date  | 
            |
| 874 | 
                + log.date = datetime.strptime(date + ' 23:59:59', '%Y-%m-%d %H:%M:%S')  | 
            |
| 874 | 875 | 
                log.city = city  | 
            
| 875 | 876 | 
                log.location = location  | 
            
| 876 | 877 | 
                log.integral = integral  | 
            
| 877 | 
                - log.cover_url = cover_url  | 
            |
| 878 | 
                + log.cover = cover_url  | 
            |
| 878 | 879 | 
                log.slider_image = slider_image  | 
            
| 879 | 
                - log.image = image  | 
            |
| 880 | 
                + log.image = slider_image  | 
            |
| 880 | 881 | 
                log.is_signup = is_signup  | 
            
| 881 | 882 | 
                log.group_share_integral = group_share_integral  | 
            
| 882 | 883 | 
                log.group_share_max_integral = group_share_max_integral  | 
            
                @@ -884,6 +885,7 @@ def member_activity_update(request):  | 
            ||
| 884 | 885 | 
                log.is_slider = is_slider  | 
            
| 885 | 886 | 
                log.content_rich_text = content_rich_text  | 
            
| 886 | 887 | 
                log.share_h5_link = share_h5_link  | 
            
| 888 | 
                + log.activity_state = activity_state  | 
            |
| 887 | 889 | 
                log.save()  | 
            
| 888 | 890 | 
                 | 
            
| 889 | 891 | 
                return response(200, 'MemberActivityInfo Update Success', u'会员活动更新成功')  | 
            
                @@ -895,17 +897,20 @@ def member_activity_create(request):  | 
            ||
| 895 | 897 | 
                     subtitle = request.POST.get('subtitle', '')
               | 
            
| 896 | 898 | 
                     date = request.POST.get('date', '')
               | 
            
| 897 | 899 | 
                     city = request.POST.get('city', '')
               | 
            
| 898 | 
                -    location = request.POST.get('location', '')
               | 
            |
| 899 | 
                -    integral = request.POST.get('integral', '')
               | 
            |
| 900 | 
                +    location = request.POST.get('location', 0)
               | 
            |
| 901 | 
                +    integral = int(request.POST.get('integral', 0))
               | 
            |
| 900 | 902 | 
                     cover_url = request.POST.get('cover_path', '')
               | 
            
| 901 | 903 | 
                     slider_image = request.POST.get('banner_path', '')
               | 
            
| 902 | 904 | 
                     image = request.POST.get('banner_path', '')
               | 
            
| 903 | 905 | 
                     is_signup = request.POST.get('is_signup', '')
               | 
            
| 904 | 
                -    group_share_max_integral = request.POST.get('group_share_max_integral', '')
               | 
            |
| 905 | 
                -    group_share_integral = request.POST.get('share_integral', '')
               | 
            |
| 906 | 
                +    group_share_integral = int(request.POST.get('share_integral', 0))
               | 
            |
| 907 | 
                +    group_share_max_integral = int(request.POST.get('group_share_max_integral', 0))
               | 
            |
| 908 | 
                +    group_share_integral = int(request.POST.get('share_integral', 0))
               | 
            |
| 906 | 909 | 
                     is_slider = request.POST.get('is_slider', '')
               | 
            
| 907 | 910 | 
                     content_rich_text = request.POST.get('content_rich_text', '')
               | 
            
| 908 | 911 | 
                     share_h5_link = request.POST.get('share_h5_link', '')
               | 
            
| 912 | 
                +    activity_state = int(request.POST.get('activity_state', 0))
               | 
            |
| 913 | 
                +  | 
            |
| 909 | 914 | 
                 | 
            
| 910 | 915 | 
                if brand_id != settings.KODO_DEFAULT_BRAND_ID:  | 
            
| 911 | 916 | 
                return response(ProductBrandStatusCode.BRAND_NOT_MATCH)  | 
            
                @@ -923,7 +928,7 @@ def member_activity_create(request):  | 
            ||
| 923 | 928 | 
                city=city,  | 
            
| 924 | 929 | 
                location=location,  | 
            
| 925 | 930 | 
                integral=integral,  | 
            
| 926 | 
                - cover_url=cover_url,  | 
            |
| 931 | 
                + cover=cover_url,  | 
            |
| 927 | 932 | 
                slider_image=slider_image,  | 
            
| 928 | 933 | 
                image=image,  | 
            
| 929 | 934 | 
                is_signup=is_signup,  | 
            
                @@ -336,7 +336,7 @@ def activity_list(request):  | 
            ||
| 336 | 336 | 
                     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
| 337 | 337 | 
                     user_id = request.POST.get('user_id', '')
               | 
            
| 338 | 338 | 
                 | 
            
| 339 | 
                -    raw_activitys = MemberActivityInfo.objects.filter(status=True).order_by('-date')
               | 
            |
| 339 | 
                +    raw_activitys = MemberActivityInfo.objects.filter(activity_state=1, status=True).order_by('-date')
               | 
            |
| 340 | 340 | 
                banners = []  | 
            
| 341 | 341 | 
                activitys = []  | 
            
| 342 | 342 | 
                for act in raw_activitys:  | 
            
                @@ -0,0 +1,20 @@  | 
            ||
| 1 | 
                +# -*- coding: utf-8 -*-  | 
            |
| 2 | 
                +# Generated by Django 1.11.26 on 2020-12-03 08:06  | 
            |
| 3 | 
                +from __future__ import unicode_literals  | 
            |
| 4 | 
                +  | 
            |
| 5 | 
                +from django.db import migrations, models  | 
            |
| 6 | 
                +  | 
            |
| 7 | 
                +  | 
            |
| 8 | 
                +class Migration(migrations.Migration):  | 
            |
| 9 | 
                +  | 
            |
| 10 | 
                + dependencies = [  | 
            |
| 11 | 
                +        ('member', '0022_auto_20201203_1500'),
               | 
            |
| 12 | 
                + ]  | 
            |
| 13 | 
                +  | 
            |
| 14 | 
                + operations = [  | 
            |
| 15 | 
                + migrations.AddField(  | 
            |
| 16 | 
                + model_name='memberactivityinfo',  | 
            |
| 17 | 
                + name='activity_state',  | 
            |
| 18 | 
                + field=models.IntegerField(choices=[(0, '\u8349\u7a3f'), (1, '\u5df2\u53d1\u5e03')], db_index=True, default=0, help_text='\u6d3b\u52a8\u72b6\u6001', verbose_name='activity_state'),  | 
            |
| 19 | 
                + ),  | 
            |
| 20 | 
                + ]  | 
            
                @@ -282,6 +282,11 @@ class ShotTypeInfo(BaseModelMixin):  | 
            ||
| 282 | 282 | 
                 | 
            
| 283 | 283 | 
                 | 
            
| 284 | 284 | 
                class MemberActivityInfo(BaseModelMixin):  | 
            
| 285 | 
                + ACTIVITY_STATE = (  | 
            |
| 286 | 
                + (0, u'草稿'),  | 
            |
| 287 | 
                + (1, u'已发布'),  | 
            |
| 288 | 
                + (2, u'下线'),  | 
            |
| 289 | 
                + )  | 
            |
| 285 | 290 | 
                brand_id = models.CharField(_(u'brand_id'), max_length=32, blank=True, default='', help_text=u'品牌唯一标识', db_index=True)  | 
            
| 286 | 291 | 
                brand_name = models.CharField(_(u'brand_name'), max_length=255, blank=True, default='', help_text=u'品牌名称')  | 
            
| 287 | 292 | 
                 | 
            
                @@ -314,6 +319,8 @@ class MemberActivityInfo(BaseModelMixin):  | 
            ||
| 314 | 319 | 
                 | 
            
| 315 | 320 | 
                is_signup = models.BooleanField(_(u'is_signup'), default=True, help_text=u'是否有报名功能')  | 
            
| 316 | 321 | 
                 | 
            
| 322 | 
                + activity_state = models.IntegerField(_(u'activity_state'), choices=ACTIVITY_STATE, default=0, help_text=u'活动状态', db_index=True)  | 
            |
| 323 | 
                +  | 
            |
| 317 | 324 | 
                position = models.IntegerField(_(u'position'), default=1, help_text=u'排序', db_index=True)  | 
            
| 318 | 325 | 
                 | 
            
| 319 | 326 | 
                class Meta:  | 
            
                @@ -397,9 +404,11 @@ class MemberActivityInfo(BaseModelMixin):  | 
            ||
| 397 | 404 | 
                'integral': self.integral,  | 
            
| 398 | 405 | 
                'content_rich_text': self.content_rich_text,  | 
            
| 399 | 406 | 
                'cover_url': self.cover_url,  | 
            
| 407 | 
                + 'cover_path': self.cover_path,  | 
            |
| 400 | 408 | 
                'share_img_link': self.share_img_link,  | 
            
| 401 | 409 | 
                'share_h5_link': self.share_h5_link,  | 
            
| 402 | 410 | 
                'slider_image': self.slider_image_url,  | 
            
| 411 | 
                + 'banner_path': self.slider_path,  | 
            |
| 403 | 412 | 
                'state': self.final_state,  | 
            
| 404 | 413 | 
                'is_signed': self.is_signed(user_id),  | 
            
| 405 | 414 | 
                'is_signup': self.is_signup,  | 
            
                @@ -426,6 +435,8 @@ class MemberActivityInfo(BaseModelMixin):  | 
            ||
| 426 | 435 | 
                'is_signup': self.is_signup,  | 
            
| 427 | 436 | 
                'share_integral': self.group_share_integral,  | 
            
| 428 | 437 | 
                'share_max_integral': self.group_share_max_integral,  | 
            
| 438 | 
                + 'is_slider': self.is_slider,  | 
            |
| 439 | 
                + 'activity_state': self.activity_state,  | 
            |
| 429 | 440 | 
                'created_at': tc.local_string(utc_dt=self.created_at, format='%Y-%m-%d %H:%M:%S'),  | 
            
| 430 | 441 | 
                }  | 
            
| 431 | 442 | 
                 | 
            
                @@ -451,6 +462,8 @@ class MemberActivityInfo(BaseModelMixin):  | 
            ||
| 451 | 462 | 
                'is_signup': self.is_signup,  | 
            
| 452 | 463 | 
                'share_integral': self.group_share_integral,  | 
            
| 453 | 464 | 
                'share_max_integral': self.group_share_max_integral,  | 
            
| 465 | 
                + 'activity_state': self.activity_state,  | 
            |
| 466 | 
                + 'is_slider': self.is_slider,  | 
            |
| 454 | 467 | 
                'created_at': tc.local_string(utc_dt=self.created_at, format='%Y-%m-%d %H:%M:%S'),  | 
            
| 455 | 468 | 
                }  | 
            
| 456 | 469 | 
                 |